#include <cstdio>
int print(int a[])
{
    for(int i=0;i<54;++i)
    {
        if(a[i]<=13)printf("S%d",a[i]);
        else if(a[i]<=26)printf("H%d",a[i]-13);
        else if(a[i]<=39)printf("C%d",a[i]-26);
        else if(a[i]<=52)printf("D%d",a[i]-39);
        else printf("J%d",a[i]%52);
        if(i<53)putchar(' ');//保证结尾没有多余的空格
    }
    return 0;
}
int main()
{
    int a[54],b[54],c[54];//前两个数组用来存放卡片编号，c用来存放洗牌顺序
    int i,j;
    int count=0;//记录交换的次数
    for(i=0;i<54;++i)
    {
        a[i]=i+1;
    }
    int num;
    scanf("%d",&num);
    for(i=0;i<54;++i)
    {
        scanf("%d",c+i);
    }
    while(count<num)
    {//循环洗牌
        if(0==count%2)
        {
            for(i=0;i<54;++i)
            {
                b[c[i]-1]=a[i];
            }
        }else{
            for(i=0;i<54;++i)
            {
                a[c[i]-1]=b[i];
            }
        }
        ++count;
    }
    if(0==count%2)
    {
        print(a);
    }else{
        print(b);
    }
}
